Apparatus, system and method to transmit and display acquired well data in near real time at a remote location

ABSTRACT

The present invention provides a system, apparatus and method for transmitting logging data from a primary location to a remote location in near real time. The logs can be viewed almost simultaneously at the primary and remote locations, as data is being acquired. 
     The present invention also provides for a system for viewing logs in near real time at a primary location and a remote location which includes a first means for reading while writing at the primary location, a second means for reading while writing at the remote location which is identical to the first means for reading while writing, a first file system at the primary location, the first file system having data written to it by the first means for reading while writing as numerical data or graphics data, a first rendering means for reading the graphics data from the first file system and rendering the graphics data so that it can be displayed, a first display means for displaying the rendered graphics data, a first file transfer utility means for transmitting the data from the primary location to the remote location over a communications system, a second file transfer utility means for receiving the data at the remote location, a second file system at the remote location, to which the second file transfer utility means writes the received data using the second means for reading while writing, a second rendering means for reading graphics data from the second file system and rendering the graphics data so that it can be displayed, a input interface means which directs signals from an user input to the second rendering means to adjust the display of the log, and a second display means for displaying the rendered graphics data at the remote location.

This application is a continuation of application Ser. No. 08/772,956filed Dec. 23, 1996, now U.S. Pat. No. 5,864,772.

TECHNICAL FIELD

This invention relates in general to the field of processing and viewingacquired well data, and more particularly to an improved apparatus,system and method of viewing acquired well data in near real time at alocation remote from the acquisition.

BACKGROUND OF THE INVENTION

In the oil and gas industry, operating companies which own and/or managehydrocarbon wells evaluate the wells by wireline logging. In wirelinewell logging, one or more tools are connected to a power and datatransmission cable or "wireline" and are lowered into the well boreholeto obtain measurements of geophysical properties for the areasurrounding the borehole. The wireline supports the tools as they arelowered into the borehole, supplies power to the tools and provides acommunication medium to send signals to the tools and receive data fromthe tools. Commonly, tools are lowered to a depth of interest in thewell and are then retrieved. As the tools are retrieved, they send dataabout the geological formations through which they pass through thewireline to data acquisition and processing equipment at the surface,usually contained inside a logging truck or a logging unit.

The data acquisition and processing equipment, including software,compiles the data from the tools into a "log," a plot which presents thegeophysical information concerning the geological formations encounteredby the well, frequently by depth. Logs can also be used to evaluatecurrent production from producing wells or to inspect the integrity ofproduction equipment in a producing well. In any case, the data gatheredduring the logging operation is generally presented on the log by depth,but may also be presented by time, or any other index by which multiplephysical entries are recorded. U.S. Pat. No. 5,051,962 (incorporated byreference) describes such a well logging system controlled by a generalpurpose computer programmed for real time operation. Various dataacquisition and processing software programs are known in the art. Anexample of data acquisition and processing software is Schlumberger'sproprietary MAXIS™ system, which is a suite of separate computerprograms.

The data acquisition and processing software writes the log data to twotypes of locked format files on disk. By "locked," it is meant that theformat files cannot be written to and read from at the same time. Thetwo types of locked format files are distinguished by the type ofinformation they contain: one is a data format file and the other is agraphics format file. The data format file contains the numericalproperties of the log data; the graphics format file contains thepictorial representation of the data. The data acquisition andprocessing software continues writing the log data to the locked dataformat file and the locked graphics format file until the log iscomplete. Then the data from the locked data format file and the lockedgraphics format file may be translated from digital readings intophysical form by a marking device such as a printer. In addition to thelocked data format file and the locked graphics format file, the dataacquisition and processing software may send the log data to a viewingmonitor, via a renderer. Using the monitor, the well loggingprofessional ("logging engineer") conducting the logging operation canview the log as it is being compiled.

After the log is compiled, it can be transmitted to the operatingcompany's headquarters for interpretation and review by management. Thepaper log may be sent directly from the wellsite to the operatingcompany as a facsimile. Alternatively, the completed locked data formatfile can be sent from the wellsite to a data processing center viasatellite using a protocol such as DECNET. The data processing centercould in turn transmit the log as a facsimile to the operating company.As another alternative, the completed locked data format file can besent from the wellsite to an operating company using a computer programsuch as Blast™ by U.S. Robotics.

The data acquired by logging is often crucial to the decision-makingprocess on what will be done with the well being logged. Take, forexample, a well which has just been drilled and logged. Depending on theresults of the log, the well could be drilled deeper, plugged andabandoned as non-productive or cased and tested--or perhaps the decisionwill be that additional logs are required before the decision on thedisposition of the well can be made. The results of the log may alsohelp determine whether the well requires stimulation or specialcompletion techniques, such as gas lift or sand control. In any case,these decisions are crucial and have to be made very quickly. Mistakesor even mere delay can be extremely expensive.

Because log interpretation is part art and part science, the operatingcompany which is drilling or producing the well frequently desires tohave its own personnel viewing the log data as the well is being logged.But the operating company may be located half a world away from the wellitself. Drilling and production activities are often located in remotelocations and it is difficult for the operating company to have its ownpersonnel, such as a geologist or petrophycist, join the wirelinecompany's logging engineer on site during the logging operation.Sometimes logistics or severe weather conditions prevent the operatingcompany from sending anyone to the wellsite for the logging operation.Furthermore, sending personnel to wellsites is expensive and exposesthem to all of the hazards of the drilling or production operation, aswell as the hazards and inconvenience of travel. As a consequence,tentative decisions often have to be made before the operating companycan complete its review of the actual logging data, relying solely onthe interpretations conducted at the wellsite.

Accordingly, a need exists for a system or method which would allow theoperating company personnel at a location remote from the wellsite toview the log as it is compiled in at least near real time.

A further need exists for a system or a method which will allow realtime communication during a logging operation between persons at aremote location viewing the logging data and the well logging engineer.

Because the data from the logging operation is of a highly competitivenature and is extremely confidential, a need exists for a system ormethod which will send well data from a wellsite to a remote location innear real time, in such a way that the data is not susceptible to beingmisdirected or lost.

A further need exists for a system or a method which will allow personsto view the logging data in near real time, without the expense oftravelling to the wellsite and without being exposed to the hazards ofthe wellsite.

SUMMARY OF THE INVENTION

In accordance with the present invention, an apparatus, system andmethod are provided that substantially eliminate or reduce thedisadvantages and problems associated with the previously developed filetransfer systems.

The present invention provides for an apparatus for viewing a log innear real time at a primary location and a remote location whichincludes, at the primary location, a first means for reading whilewriting the log to a first file, a first renderer at the primarylocation for reading the log as it is being written to the first fileand for rendering the log, a primary monitor for receiving signals fromthe first renderer and for viewing the rendered log at the primarylocation, a means for transmitting the log from the first file at theprimary location as it is being written to the remote location over acommunication means, which includes a physical link, a protocol and atransport mechanism, a second means at the remote location for readingwhile writing, which writes the log as it is received from the primarylocation to a second file at the remote location, a second renderer atthe remote location for reading the log as it is being written to thesecond file and rendering the log, and a remote monitor for receivingsignals from the second renderer and for viewing the rendered log at theremote location.

The present invention also provides for an apparatus for viewing logs innear real time at a primary location and a remote location whichincludes a first format file at a primary location with data and asecond format file at a secondary location, a means for reading whilewriting the data to the first format file and the second format file, acommunications means which includes a physical link, a protocol and atransport mechanism, and a first file transfer utility program and asecond file transfer utility program, the first file transfer utilityprogram for retrieving data from the first format file in near real timeusing the means for reading while writing and for transferring the datafrom the first format file to a second file transfer utility programover the communications means, the second file transfer utility programfor writing the data in near real time to the second format file usingthe means for reading while writing. The present invention may furtherinclude a first means at the primary location for obtaining the datafrom the format file and for rendering the log data into images fordisplay on a first display means at the primary location, and a secondmeans at the primary location for obtaining the log data from the dataformat file and for rendering the log data into images for display on asecond display means at the remote location.

The present invention also provides for a system for viewing logs innear real time at a primary location and a remote location whichincludes a first means for reading while writing at the primarylocation, a second means for reading while writing at the remotelocation which is identical to the first means for reading whilewriting, a first file system at the primary location, the first filesystem having data written to it by the first means for reading whilewriting as numerical data or graphics data, a first rendering means forreading the graphics data from the first file system and rendering thegraphics data so that it can be displayed, a first display means fordisplaying the rendered graphics data, a first file transfer utilitymeans for transmitting the data from the primary location to the remotelocation over a communications system, a second file transfer utilitymeans for receiving the data at the remote location, a second filesystem at the remote location, to which the second file transfer utilitymeans writes the received data using the second means for reading whilewriting, a second rendering means for reading graphics data from thesecond file system and rendering the graphics data so that it can bedisplayed, a input interface means which directs signals from an userinput to the second rendering means to adjust the display of the log,and a second display means for displaying the rendered graphics data atthe remote location. More specifically, the first means for readingwhile writing may a read while write module. The second means forreading while writing may be a read while write module identical to thefirst read while write module. The first file system may include a firstformat file or may include a first data format file and a first logformat file The first rendering means may include a first renderingsoftware, a rendering server and a third means for reading while writingidentical to the first means for reading while writing. The firstdisplay means may include a first monitor and/or a first printer. Thefirst file transfer utility means may include a first file transferserver and/or a first file transfer client. The first file transferserver and/or the first file transfer client may include a copy of thefirst means for reading while writing. The first rendering software mayinclude a first reader/interpreter means, a first object builder, afirst object rendering module, and a first output module. The firstreader/interpreter means may be a first reader/interpreter or may be thecombination of a first reader and a first interpreter. The second filetransfer utility means may include a second file transfer server and/ora second file transfer client. The second file system may include asecond format file or a second data format file and a second log formatfile. The second rendering means may include a second renderingsoftware, and a fourth means for reading while writing identical to thefirst means for reading while writing. The second rendering software mayinclude a second reader/interpreter means, a second object builder, asecond object rendering module, and a second object module. The secondreader/interpreter means may be a reader/interpreter the combination ofa reader and an interpreter. The input interface means may include aninput, a message handler module and an user interface module. The seconddisplay means may include a second monitor, a second printer or a nativeprinter. The communication system may include a physical link, aprotocol and a transport mechanism. The protocol may be TCP/IP. Thephysical link may be satellite communication, telephone communication,communication via microwave transmission, radio communication, cellularcommunication or communication via modem. The communication system mayalso allow for person to person communication between the primarylocation and the remote location. The personal communication may betyped (chat box) communication, audio communication, videocommunication, or electronic whiteboard communication. The primarylocation may be a wellsite and the invention may also include a dataacquisition system for acquiring data from logging tools and sending itto the first means for reading while writing for storage onto the firstfile system.

The present invention also provides a system for viewing logs in nearreal time at a primary location and a remote location which includes afirst read while write module at the primary location, a second readwhile write module at the remote location which is identical to thefirst read while write module, a first data format file at the primarylocation having numerical data written to it by the first read whilewrite module, a first log format file at the primary location havinggraphical data written to it by the first read while write module, afirst rendering software suite for reading the graphics data from thefirst log format file and rendering the graphics data so that it can bedisplayed, a first monitor means for displaying the rendered graphicsdata at the primary location, a first printer means for displaying therendered graphics data at the primary location, a first file transferutility means for transmitting the data from the primary location to theremote location over a communications system, the communication systemincluding a physical link, a protocol and a transport mechanism, asecond file transfer utility means for receiving the data at the remotelocation, a second data format file at the remote location to which thesecond file transfer utility means writes the received numerical datausing the second means for reading while writing, a second log formatfile at the remote location to which the second file transfer utilitymeans writes the received graphical data using the second means forreading while writing, a second rendering software suite for readinggraphics data from the second log format file and rendering the graphicsdata so that it can be displayed, a input interface means which directssignals from an user input to the second rendering means to adjust thedisplay of the log, and a second display means for displaying therendered graphics data at the remote location. More specifically, thefirst rendering software suite may include a first rendering software, arendering server and a third read while write module identical to thefirst read while write module. The first monitor means may include afirst monitor and the first printer means may include a first printer.The first file transfer utility means may includes a first file transferserver a first file transfer client. The first file transfer serverand/or the first file transfer client may include a copy of the firstmeans for reading while writing. The first rendering software mayinclude a first reader/interpreter means, a first object builder, afirst object rendering module, and a first output module. The firstreader/interpreter means may be a first reader/interpreter thecombination of a first reader and a first interpreter. The second filetransfer utility means may include a second file transfer server or asecond file transfer client. The second rendering means may include asecond rendering software, and a fourth means for reading while writingidentical to the first means for reading while writing. The secondrendering software may include a second reader/interpreter means, asecond object builder, a second object rendering module, and a secondobject module. The second reader/interpreter means comprises areader/interpreter the combination of a reader and an interpreter. Theinput interface means may include an input, a message handler module andan user interface module. The second display means may include a secondmonitor, a second printer and/or a native printer. The protocol may beTCP/IP. The physical link may be satellite communication, telephonecommunication, communication via microwave transmission, radiocommunication, cellular communication or communication via modem. Thecommunication system may also allow for person to person communicationbetween the primary location and the remote location. The personalcommunication may be typed (chat box) communication, audiocommunication, video communication or electronic whiteboardcommunication. The primary location may be a wellsite and the inventionmay also include a data acquisition system for acquiring data fromlogging tools and sending it to the first means for reading whilewriting for storage onto the first data format file and the first logformat file.

The present invention also provides a method for viewing a log in nearreal time at a primary location and a remote location which includes thesteps of writing data including numerical data and graphics data to afirst file system at the primary location, reading the data from thefirst file system while writing it, rendering the graphics data so thatit can be displayed at the primary location, displaying the graphicsdata at the primary location, reading the data while it is being writtenand transferring the data from the primary location to the remotelocation over a communication system, the communication system includinga physical link, a protocol and a transport mechanism, receiving thedata at the remote location, writing the data as it is being received toa second file system at the remote location, reading the data from thesecond file system while writing it, rendering the graphics data fromthe second file system so that it can be displayed at the remotelocation, and displaying the graphics data at the remote location. Theinvention may also include the step of adjusting the display of the logat the second location responsive to user input. The log may displayedat the remote location on a remote monitor, a remote printer, or anative printer. The communication systems protocol may be TCP/IP. Thephysical link may be satellite communication, telephone communication,communication via microwave transmission, radio communication, cellularcommunication or communication via modem. The communication system mayalso allow for person to person communication between the primarylocation and the remote location. The personal communication comprisestyped (chat box) communication, audio communication, video communicationor electronic whiteboard communication.

The present invention also provides for an apparatus for sharing a datafile between a primary location and a remote location which includes afirst means for reading while writing at the primary location, a secondmeans for reading while writing at the remote location which isidentical to the first means while writing, a first file system at theprimary location, the first file system having data written to it by thefirst means for reading while writing as either numerical data orgraphics data, a first rendering means for reading the graphics datafrom the first file system and rendering the graphics data so that itcan be displayed at the primary location, a first display means fordisplaying the rendered graphics data at the primary location, a firstfile transfer utility means for transmitting the data from the primarylocation to the remote location over a communications system, thecommunication system including a physical link, a protocol and atransport mechanism, a second file transfer utility means for receivingthe data at the remote location, a second file system at the remotelocation, to which the second file transfer utility means writes thereceived data using the second means for reading while writing, a secondrendering means for reading graphics data from the second file systemand rendering the graphics data so that it can be displayed at theremote location, a input interface means which directs signals from anuser input to the second rendering means to adjust the display of thelog, and a second display means for displaying the rendered graphicsdata at the remote location.

1. The present invention also provides for an apparatus for viewing logsin near real time at a primary location, a first remote location and oneor more supplementary remote locations which includes a first read whilewrite module at the primary location, a second read while write moduleat the first remote location which is identical to the first read whilewrite module, a first data format file at the primary location havingnumerical data written to it by the first read while write module, afirst log format file at the primary location having graphical datawritten to it by the first read while write module, a first renderingsoftware suite for reading the graphics data from the first log formatfile and rendering the graphics data so that it can be displayed, afirst monitor means for displaying the rendered graphics data at theprimary location, a first printer means for displaying the renderedgraphics data at the primary location, a first file transfer server fortransmitting the data from the primary location to the first remotelocation over a communications system, the communication systemincluding a physical link, a protocol and a transport mechanism, asecond file transfer client for receiving the data at the first remotelocation and sending it to a tertiary file transfer client at thesupplementary remote location, a second data format file at the remotelocation to which the second file transfer client writes the receivednumerical data using the second means for reading while writing, asecond log format file at the remote location to which the second filetransfer client writes the received graphical data using the secondmeans for reading while writing, a second rendering software suite forreading graphics data from the second log format file and rendering thegraphics data so that it can be displayed, a input interface means whichdirects signals from an user input to the second rendering means toadjust the display of the log at the first remote location, a seconddisplay means for displaying the rendered graphics data at the firstremote location, a tertiary data format file at the supplemental remotelocation to which the tertiary file transfer client writes the receivednumerical data using a tertiary means for reading while writing, thetertiary means for reading while writing being identical to the firstmeans for reading while writing, a tertiary log format file at theremote location to which the tertiary file transfer client writes thereceived graphical data using the tertiary means for reading whilewriting, a tertiary rendering software suite for reading graphics datafrom the tertiary log format file and rendering the graphics data sothat it can be displayed at the supplemental remote location, a secondinput interface means which directs signals from an second user input tothe tertiary rendering means to adjust the display of the log at thesupplemental remote location, and a tertiary display means fordisplaying the rendered graphics data at the supplemental remotelocation.

An advantage of the present invention is logging data can be transmittedfrom a wellsite to a remote location, or a plurality of remotelocations, for viewing in near real time.

Another advantage of the present invention is that it allows real timecommunication during the logging operation between persons at the remotelocation viewing the log and the logging engineer at the wellsite.

Another advantage of the present invention is that it allows securetransmission of the well data from the wellsite to the remote location.

Another advantage of the present invention is that it promotes safetyand reduces cost by obviating or reducing the need to have additionalpersonnel on the wellsite in order to view the acquisition of loggingdata in near real time.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a primary location in communication with a remotelocation according to the present invention.

FIG. 2 illustrates the data acquisition and processing equipment of theprimary location, including inputs and outputs.

FIG. 3 illustrates the remote location equipment, including inputs andoutputs.

FIG. 4A illustrates the components of the primary memory.

FIG. 4B illustrates the components of the remote memory.

FIG. 5 illustrates the data acquisition and processing software andother software programs at the primary location and the remote dataprocessing software and other software programs at the remote location.

FIG. 6 illustrates the transmission process if near real time display isnot desired.

FIG. 7 illustrates the transmission process if near real time display isdesired.

FIG. 8 illustrates the communication system.

FIG. 9 illustrates the primary rendering software suite.

FIG. 10 illustrates the remote rendering software suite.

FIG. 11A-11G illustrate the different scenarios for file transfer andviewing data in near real time.

DESCRIPTION OF A PREFERRED EMBODIMENT

The above noted and other aspects of the present invention will becomemore apparent from a description of a preferred embodiment, when read inconjunction with the accompanying drawings. The drawings illustrate thepreferred embodiment of the invention described. In the drawings, thesame members have the same reference numerals.

The above-noted and other aspects of the present invention will becomemore apparent from a description of a preferred embodiment, when read inconjunction with the accompanying drawings. The drawings illustrate thepreferred embodiment of the invention. In the drawings, the same membershave the same reference numerals.

I. Overview

As described in co-pending U.S. patent application Ser. No. 08/772,712,now U.S. Pat. No. 6,021,198, incorporated by reference, and asillustrated in FIG. 1, during logging operations, log data is sent froma logging tool 10 through wireline 20 to a data acquisition andprocessing system 30 at a wellsite or primary location 40. ("Primary isused in the sense of the word "first," not "most important.") A primaryinput device 50, such as a keyboard and/or a mouse, allows human inputinto the data acquisition and processing system 30. Outputs to the dataacquisition and processing system 30 include a primary monitor 60, and aprimary printer 70, which acts through a primary printer driver 80 toprint a log 90. The data acquisition and processing system 30communicates with a remote location 100 through a communication channel110. The remote location 100 has a remote location equipment 120, aremote input device 130 for human input, such as a keyboard and/or amouse, and outputs, such as a remote monitor 140 and a remote printer150 which acts through a remote printer driver 160 to produce a logidentical to the log 90 produced at the primary location. (Although thelogs have separate physical existences, both logs are given thereference number 90 to indicate this identity.)

Continuing to refer to FIG. 1, the data acquisition and processingequipment 30 and the remote location equipment 120 establishcommunication over the communication system 110. Preferably, thecommunication system 110 uses TCP/IP protocol and is based on a physicallink, such as hard-wire, cellular, radio, microwave, satellite ortelephone transmission. In alternative embodiments, other types ofpoint-to-point network protocols, such as Blast by U.S. Robotics, DECNETor UDP may be used. In still other embodiments, other types ofcommunication systems could be used. If using the TCP/IP protocol, boththe data acquisition and processing equipment 30 and remote locationequipment 120 have individual IP addresses 102, 104 in accordance withthe TCP/IP protocol. The bandwidth of the communication system 110 ispreferably at least 10 kilobits per second. As illustrated in FIG. 8,the components of the communication system 110 include a physical link111, the protocol 112 such as TCP/IP, and the transport mechanism 113,as well as other components illustrated.

FIG. 2 illustrates the data acquisition and processing equipment presentat the primary location 40, including its inputs and outputs. Asillustrated in FIG. 2, the log data enters the data acquisition andprocessing equipment 30 through a data acquisition system 170. The dataacquisition and processing equipment 30 also includes a primary dataprocessor 180, a primary bus 190, a primary file system 195, and aprimary memory 200. The primary input device 50, the primary monitor 60,the primary printer 70, the primary printer driver 80, and the log 90are also illustrated.

FIG. 3 illustrates the remote location equipment 120, including itsinputs and outputs. As illustrated in FIG. 3, the remote locationequipment 120 includes a remote data processor 210, a remote bus 220, aremote file system 225, and a remote memory 230. The remote input device130, a remote display device such as the remote monitor 140, the remoteprinter 150 and/or a native printer 994, the remote printer driver 160,and the log 90 are also illustrated. The remote data processor 210 ispreferably a Pentium PC (P5-90 or higher), with an Ethernet interface ora modem. The remote memory 230 has preferably at least 32 Megabyte RAM.

FIG. 4A illustrates the components of the primary memory 200. Asillustrated in FIG. 4A, the primary memory 200 includes a primary dataacquisition and processing software 240, a primary operating systemsoftware 250, a primary data storage 260, a primary file transferutility program 270 and other primary software 280. The primaryoperating system software 250 is preferably Windows® NT™ by MicrosoftCorporation. If near real time viewing is not desired, OpenVMS byDigital Equipment Corporation or other operating systems may be used.

FIG. 4B illustrates the components of the remote memory. As illustratedin FIG. 4B, the remote memory 230 includes a remote data processingsoftware 290, a remote operating system software 300, a remote datastorage 310, a remote file transfer utility program 320 and other remotesoftware 330. The remote operating system software 300 is preferablyWindows® NT™ by Microsoft Corporation.

II. At the Primary Location

FIG. 5 illustrates the data acquisition and processing software 240 andother software programs at the primary location and the remote dataprocessing software 290 and other software programs at the remotelocation. As log data enters the data acquisition and processingsoftware 240, the data enters a primary data formatting program 340where it is formatted as numerical data in industry standard format forstorage. The data also enters a log generating program 350 which addscommands and other instructions to the data to create graphics data. Thenumerical data includes numerical properties of the data; the graphicsdata includes pictorial representation of the data.

The data formatting program 340 and the log generating program 350 actthrough a primary read-while-write ("RWW") module 360 to write the dataas it is received to a primary sharable data format file 370 and to oneor more primary sharable log graphics files 380, respectively.(Different primary sharable log graphics files 380 may be created fordifferent presentations of the same log data.)

Unlike a locked format file, a sharable format file allows shared fileaccess, such that the sharable format file may be written to and readfrom at the same time. Preferably, each sharable format file containsall of the acquired data and input parameters for a single logging run,that is, for the data from a set of logging tools run into the wellsimultaneously.

As the primary RWW module 360 begins to write logging data to theprimary sharable data format file 370 and the primary sharable graphicsformat file 380, the primary RWW module 360 also creates for each of theprimary sharable data format file 370 and for the primary sharablegraphics format file, 380, a primary semaphore file, 390, 400respectively. The primary semaphore files 390, 400 have the same name asthe primary sharable format file for which they were created, with theaddition of a "₋₋ smf" at at the end. The existence of a semaphore fileindicates that the primary sharable format file with the similar name isa sharable file. Any program which shares access to the sharable formatfile also uses a copy of the primary RWW module to check for theexistence of the associated semaphore file to determine whether theformat file is sharable.

Continuing to refer to FIG. 5, the primary file transfer utility program270 may include a primary file transfer server 410 and/or a primary filetransfer client 420. The remote file transfer utility program 320 mayinclude a remote file transfer server 430 and/or a remote file transferclient 440. The minimum needed is a file transfer server in either theprimary or remote location and a file transfer client in the otherlocation. But there may be a file transfer server and a file transferclient in each location.

The primary file transfer server and the remote file transfer server arealways on and are always listening for requests from one of the filetransfer clients. The file transfer clients are not always on, but sendrequests or queries to the file transfer server as initiated by arequest from the user through the input device. One file transfer servermay handle requests from more than one file transfer client. A filetransfer client may re-transmit files it receives from a file transferserver to one of more other secondary file transfer servers at differentlocations simultaneously. (See FIG. 11G). File transfer clients may ormay not read from or write to one of the format files. A file transferserver reads from and writes to a format file. Different scenarios fordata requests between file transfer clients and servers are found inFIGS. 11A through 11G.

As illustrated in FIG. 5, the rendering suite 422 may include a primaryrendering server 424, a primary rendering software 426 and a copy of theRWW module 360. The primary rendering suite 422 renders the graphicsdata as described below and sends it to either a primary monitor 60 or aprimary printer 70 through a primary monitor driver 55 and a primaryprinter driver 80, respectively.

As illustrated in greater detail in FIG. 9, the primary renderingsoftware suite 422 may include a primary rendering server 424, a primaryrendering software 426 and a copy of the RWW module 360. The primaryrendering software 426 may include a primary reader/interpreter 700, aprimary rendering server 424, a primary object builder 710, a primaryobject rendering module 720, a primary output module 730, a primaryprinter rasterization module 740, a primary software switch 750, and oneor more primary printer formatting modules 760. The functions of theprimary reader/interpreter 700 could be performed by a primary readerand an primary interpreter. The primary rendering server 424 provides afunction of a "traffic cop" for the primary rendering software suite 422by transmitting print requests and parameters to the primary renderingsoftware 426. The well logging professional conducting a loggingoperation, or printing log data from format files, may input one or moreparameters through the primary input device 50 into the data acquisitionand processing equipment 30 or the data acquisition and processingequipment 30 may itself derive or retrieve the parameters from memory.The parameters are sent through the data acquisition and processingequipment 30 and are input into the primary reader/interpreter 700through the primary rendering server 424. The primary reader/interpreter700 uses the parameters to scale the graphics data, so that it may beproperly displayed and printed.

Continuing to refer to FIG. 9, the RWW module 360 first checks for thepresence of the log format semaphore file 400 then reads graphics data,with commands, from the primary sharable log format file 380 to theprimary reader/interpreter 700. The primary reader/interpreter 700 alsoreceives the parameters and uses the graphics data and the parameters tocreate object instructions, which it sends to the primary object builder710. The primary object builder 710 turns the object instructions into acollection of objects, continuous or discrete, and sends the collectionof objects to the primary object rendering module 720. A numerical valueon a log is an example of a discrete object; the logging curves arecontinuous objects. The primary object rendering module 720 alsoreceives commands from the primary reader/interpreter 700. Using thecommands and the collection of objects, the primary object renderingmodule 720 creates a drawn object(s), or portions thereof, and sends itto the primary output module 730. The primary output module 730 uses thedrawn object(s) to create graphics instructions, which it sends to theprimary monitor 60 through the primary monitor device driver 85 and tothe primary printer rasterization module 740. The primary printerrasterization module 740 turns the graphics instructions into rastersand sends them through the primary software switch 750 to one or moreprimary printer formatting modules 760. From there, the rasters go tothe primary printer driver 80 and the primary printer 70.

III. File Transfer

As the primary file transfer server 410 reads the data, it handles thedata as described in U.S. patent application Ser. No. 08/772,712 nowU.S. Pat. No. 6,021,198 and transmits the data over the communicationsystem 110 to the remote location equipment. As illustrated in FIG. 6and FIG. 7, this includes reading the data while it is being written,compressing the data, queuing the data, encrypting the data, if desired,marshalling the data and transmitting the data. Encrypting andmarshalling the data is accomplished preferably by DCE Software by theOpen Group.

If there should be an interruption during transmission of the file, theremote file transfer client 440 attempts an automatic recovery. Theremote file transfer client 440 will use an automatic callback systemthree times to attempt to re-establish communications. If communicationis successfully re-established, the transfer of data will resume whereit left off. This is accomplished by the remote file transfer client 440knowing how many bytes of data it has and telling the primary filetransfer server 410 to pick up at the next byte. If the remote filetransfer client 440 has 1000 bytes of data, it will tell the primaryfile transfer server 410 to begin transmitting at byte number 1001. Ifthe attempts are unsuccessful, i.e. the communications failure iscomplete, the transfer can be re-started manually, in recover mode, toresume from the point of interruption.

VI. At the Remote Location

At the remote location, the transmitted data is de-crypted,un-marshalled, decompressed and written to disk. This may beaccomplished in many ways as detailed in the next section, but ispreferably accomplished in one of two ways, depending on whether thedata is to be viewed in near real time.

A. Without Near Real Time Viewing

If it is not desired to view the data in near real time, it ispreferable to allow the remote file transfer client 440 to write datadirectly to the sharable data and log format files, instead of using theremote file transfer server to do so. In fact, in such a situation, aremote file transfer server is not required. In addition, in such acase, the remote procedure call preferred for transmission is a DCEpipe. The pipe 570 includes a callback mechanism which provides for acontinuous read-send loop. That is to say that the primary file transferserver 410 can send a first buffer via the remote procedure call 140 andthen read a second buffer of data and send it too, without waiting forthe remote file transfer client 440 to receive the first buffer andrequest another. Other remote procedure calls do not include thecallback mechanism.

As illustrated in FIG. 6, in such a case, the transmitted data isreceived by the remote file transfer client 440, de-crypted andun-marshalled using a de-cryption/un-marshalling module 580. Thede-cryption/un-marshalling module 580 is preferably DCE Software by theOpen Group. The remote file transfer client 440 then decompresses thetransmitted data with the decompression module 590 and uses its own copyof the RWW module 490 to write the data to the sharable remote dataformat file 450 and/or the sharable remote log format file 460 andcreate the semaphore files, 470, 480 for the sharable remote formatfiles respectively. After the data storage is completed, the data may berendered into a log and may be printed or viewed on the remote monitor.

B. With Near Real Time Viewing

If the data is to be viewed in near real time, it is preferable to allowthe remote file transfer server to launch the remote renderer and remotemonitor. In such a case, it is preferable that the remote file transferserver, and not the remote file transfer client, handle writing the datato the sharable data and log format files. In addition, in such a case,the remote procedure call need not be the DCE pipe, because in realtime, the data is accumulating more slowly and may be transmitted at aslower rate. Because the data is coming more slowly, the callbackmechanism provided by athe pipe is not as desirable. Also, the pipe maybuffer the data, which is not preferable with near real time viewing.The remote procedure call is preferably a non-pipe remote procedure callprovided by DCE Software.

As described in U.S. patent application Ser. No. 08/772,712 now U.S.Pat. No. 6,021,198 and as illustrated in FIG. 7, the remote filetransfer client 440 receives the transmitted data, decrypts andun-marshals it. The de-cryption/un-marshalling module 580 is preferablyDCE Software by the Open Group. Then the remote file transfer client 440encrypts and marshals the data, preferably again with the DCE Softwareby the Open Group, and uses a second remote procedure call to send thedata to the remote file transfer server 430. The remote file transferserver 430 decrypts and un-marshals the data and decompresses it. Thede-cryption/un-marshalling module 580 is again preferably DCE Softwareby the Open Group. Then using its own copy of the RWW module 490, theremote file transfer server 430 writes the data to the sharable remotedata format file 450 and/or the sharable remote log format file 460,creating an associated semaphore file, 470, 480, respectively, for each.

If it is desired to view the data as it is being written, the remoterendering software can use its own copy of the RWW module 490 to readthe graphics data from the sharable log format file 460 as it is beingwritten and send the graphics data through appropriate device drivers tothe printer or monitor. This allows a person at the remote location toview or to print the data while it is being written to the remotesharable graphics data format 460.

Referring to FIG. 5 and FIG. 10, a remote rendering software suite 890may include a copy of the remote RWW module 490, a remote readerinterpreter 900, a remote object builder 910, a remote object renderingmodule 920, a remote output module 930, a remote printer rasterizationmodule 940, a remote software switch 950, and one or more primaryprinter formatting modules 960. The remote RWW module 490 first checksfor the presence of the remote log format semaphore file 480 and thenreads graphics data, with commands, from the remote sharable log formatfile 460 to the remote reader/interpreter 900. This can be done whiledata is being written to the remote sharable log format file 460.Preferably the remote RWW module 490 reads an incremental portion of thedata, preferably 512 bytes or 1 kilobyte at a time, and sends it to theremote reader/interpreter 900.

Referring to FIG. 10, the remote reader/interpreter 900 uses thegraphics data to create a plurality of object instructions. The remotereader/interpreter 900 sends the object instructions to the remoteobject builder 910. The remote object builder 910 turns the objectinstructions into a collection of objects, continuous or discrete, andsends the collection of objects to the remote object rendering module920.

The remote object rendering module 920 also receives commands from theremote reader/interpreter 900. In addition, the remote object renderingmodule 920 receives input from the user. User input travels from theremote input 130 to a native message module 980, which is an eventhandler and preferably part of the Windows NT operating system. Thenative message module 980 directs the input signals to a user interfacemodule 990. The user interface module 990 turns the signals into rendercommands and sends them to the remote object rendering module 920. Theuser interface module 990 responds to user requests (such as open file,print file, scroll, refresh, etc.) from the remote input 130 by sendingsignals to the remote reader interpreter 900 to prompt it to implementthose requests.

Continuing to refer to FIG. 10, using the commands and the collection ofobjects it receives, the remote object rendering module 920 creates adrawn object(s), or portions thereof, and sends it to the remote outputmodule 930. The remote output module 930 uses the drawn object(s) tocreate graphics instructions, which it sends to a native monitorgraphics module 970, native printer graphics module 975 or the remoteprinter rasterization module 940.

Continuing to refer to FIG. 10, the remote printer rasterization module940 turns the graphics instructions into rasters and sends them throughthe remote software switch 950 to one or more remote printer formattingmodules 960. From there, the rasters go to the remote printer driver 160and the remote printer 150.

Referring to FIG. 5 and FIG. 10, the native monitor graphics module 970and the native printer graphics module 975 format the graphicsinstructions into native graphics protocol, preferably Windows protocol.The native graphics module 970 and the native printer graphics module975 use the native graphics functions, preferably Windows, from theremote operating system to display the log on the remote monitor 140through a remote monitor driver or print the log on a native printer994, through a native print manager 996 and a native print driver 998.

After displaying the incremental portion of the log on a screen on theremote monitor, the native message module 980 and user interface module990 respond to any possible user interface request, such as windowre-drawing, log scrolling, display refresh, etc. Some of the userinterface requests such as scrolling and screen refresh will result incalls to the remote object rendering module 920 to redraw areas of thelog on the remote monitor 140. Once it has responded to any requests andif the user does not pause the log display or select the opening of anew file, the native message module 980 and user interface module 990call the remote object rendering module 920 to prompt it to read thenext portion of the log. The process is repeated until the end of thelog file is reached.

The present invention also provides a method of person-to-personcommunication at the same time the log transmission is occurring. Usinga conversations software system such as CoolTalk by InSoft Inc.,distributed with Netscape Navigator™ 3.0 from Netscape CommunicationsCorporation, and using the same communication system 110 over which thedata is transmitted, person to person communication signals may betransmitted. One or more persons at the primary location such as awellsite can hold a typed ("chat box"), verbal, video or electronicwhiteboard communication with those viewing the log at the remotelocation. An electronic whiteboard provides an electronic board in thesame electronic room as all the participants: all participants can writeto the electronic board and the writings on the electronic board can beviewed by all participants simultaneously. Other communication softwaresystems which can be used include WinTalk from ELF Communications whichprovides only chat and CU-SeeMe from White Pine Software, Inc. whichprovides video, audio, chat and whiteboard communication. The use ofTCP/IP protocol allows the bandwidth of the communication system 110 tobe shared by the file transfer and the communication signals.

A benefit of the present invention is that logging data can betransmitted from a wellsite to a remote location in near real time. Thelogs can be viewed almost simultaneously at the primary and remotelocations.

Another benefit of the present invention is that it allows real timecommunication during the logging operation between persons at the remotelocation viewing the log and the logging engineer at the wellsite.

Another benefit of the present invention is that it allows securetransmission of the well data from the wellsite to the remote location.

Another benefit is reduced cost and increased safety by obviating theneed to send additional personnel out to the wellsite for loggingoperations.

The principles, preferred embodiments, and modes of operation of thepresent invention have been described in the foregoing specification.The invention is not to be construed as limited to the particular formsdisclosed, because these are regarded as illustrative rather thanrestrictive. Moreover, variations and changes may be made by thoseskilled in the art without departing from the spirit of the invention.

What is claimed is:
 1. A system for viewing data in near real time at aremote location connected via communications channel, comprising:a) adata acquisition module operable to collect data; b) a file systemconnected to the data acquisition module and operable to store the data;c) a file transfer mechanism connected to the file system and to thecommunications channel; and d) a first read while write module connectedto the data acquisition module and the file transfer mechanism, andoperable to enable the file transfer mechanism to transfer data to thecommunications channel at the same time as the data is being writteninto the file system.
 2. The system for viewing data in near real timeat a remote location of claim 1, wherein the file transfer mechanism isincorporated into the data acquisition module.
 3. The system for viewingdata in near real time at a remote location of claim 1, furthercomprising:e) a well logging tool connected to the data acquisitionmodule via a wireline cable, and operable to measure geophysicalproperties in a bore hole.
 4. The system for viewing data in near realtime at a remote location of claim 3, further comprising a telemetrysystem connecting the well logging tool to the data acquisition moduleand wherein the telemetry system is operable to transmit data from thewell logging tool to the data acquisition module.
 5. The system forviewing data in near real time at a remote location of claim 3, furthercomprising:a remote file transfer system connected to the communicationslink; a remote file system connected to the remote file transfer system;a second read while write module connected to the remote file system;and rendering means at the second read while write module; wherein thesecond read while write module retrieves data from the remote filesystem while data is being written to the remote file system and whereinthe second read while write module transfers the data to the renderingmeans whereby the data is rendered while collected by the dataacquisition system.
 6. The system for viewing data in near real time ata remote location of claim 1, wherein the data is stored in the filesystem in a first format file.
 7. The system for viewing data in nearreal time at remote location of claim 6, wherein the data is stored inthe file system in a second format file.
 8. The system for viewing datain near real time at remote location of claim 7, wherein the firstformat file is a log graphics file and the second format file is a logdata file.
 9. A method for operating a communications system having aprimary location and a remote location connected via a communicationschannel for viewing data in near real time at the remote location,comprising:a) collecting geophysical data; b) writing the geophysicaldata to a file system; c) while writing the geophysical data to a filesystem, reading the geophysical data; and d) while writing thegeophysical data to a file system, transmitting the geophysical data toa remote location.
 10. The method for operating a communications systemhaving a primary location and a remote location of claim 9, furthercomprising:e) receiving the geophysical data at the remote location; f)writing the geophysical data to a remote file system at the remotelocation; and g) while writing the geophysical data to the remote filesystem, rendering the data.
 11. The method for operating acommunications system having a primary location and a remote location ofclaim 9, wherein the data is log data.
 12. The method for operating acommunications system having a primary location and a remote location ofclaim 9, wherein the data is log graphics.
 13. The method for operatinga communications system having a primary location and a remote locationof claim 9, wherein the step b) of writing the geophysical data to afile system, comprises writing the geophysical data to a log graphicsfile and to a log data file.